#include<cstdio>
#include<cstring>

const int maxn=4005;
const int maxm=205;

char t[maxn][maxm],p[maxm],ans[maxm];
int m,n,next[maxn],tt,b;
bool find;

void make_next()
{
	m=strlen(p+1);
	int k=0;
	next[1]=0;
	for(int i=2;i<=m;i++)
	{
		while(k>0&&p[k+1]!=p[i])
			k=next[k];
		if(p[k+1]==p[i])k++;
		next[i]=k;
	}
}
bool match(int k)
{
	int q=0;
	make_next();
	n=strlen(t[k]+1);
	for(int i=1;i<=n;i++)
	{
		while(q>0&&p[q+1]!=t[k][i])
			q=next[q];
		if(p[q+1]==t[k][i])q++;
		if(q==m)return true;
	}
	return false;
}
void cmp()
{
	if(strcmp(p+1,ans+1)<0)
	{
		for(int i=1;i<=strlen(p+1);i++)
			ans[i]=p[i];
	}
}
void work(int k)
{
	bool hasfind=false;
	for(int i=1;i<=b+1-k;i++)
	{
		for(int j=1;j<=k;j++)
			p[j]=t[0][i+j-1];
		p[k+1]='\0';
		bool flag=true;
		for(int j=1;j<tt;j++)
			if(!match(j))
			{
				flag=false;
				break;
			}
		if(flag)
		{
			if(hasfind)
				cmp();
			else
			{
				hasfind=true;
				for(int r=1;r<=k;r++)
					ans[r]=p[r];
				ans[k+1]='\0';
			}	
		}
	}
	find=hasfind;
}
int main()
{
	while(scanf("%d",&tt)&&tt)
	{
		for(int i=0;i<tt;i++)
		  scanf("%s",t[i]+1);
		find=false;
		b=strlen(t[0]+1);
		for(int i=b;i>=1;i--)
		{
			work(i);
			if(find)
			{
				printf("%s\n",ans+1);
				break;
			}
		}
		if(!find)printf("IDENTITY LOST\n");
	}
	return 0;
}



	
